home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 June / EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso / earcd / amos / guicomp.lha / GuiShell.Amos / GuiShell.amosSourceCode < prev    next >
AMOS Source Code  |  1992-09-02  |  3KB  |  126 lines

  1. '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  2. ' AMOSPro GUI Compiler Shell V1.1
  3. ' ï¿½1996 Dairymen Soft
  4. ' Written by Pietro Ghizzoni - Amos Professional Team Coordinator  
  5. ' E-Mail: ghizzo@galactica.it
  6.  
  7. Amos To Back : Track Play 7 : Extension_24_02C6 : Extension_24_0018 1,1,20
  8.  
  9. Global FILE$,SOURCE$,DEST$,DEF$,PATH$,JUMP$,LIB$,TITLE$,HAND,HAND2
  10.  
  11. DEF$=" WB NODEF NOERR TYPE=0" : JUMP$=" NOLONG" : LIB$=" INCLIB" : Restore ABOUT
  12. For I=1 To 4 : Read A$ : M$=M$+A$+Chr$(10) : Next : TITLE$="GUI Compiler Shell Request"
  13. PATH$=Resource$(0)+"GUICmp"
  14.  
  15.  
  16. If Exist(PATH$)=False
  17.    
  18.    Repeat 
  19.       REQ["Load compiler"]
  20.    Until Extension_24_0166 ="GUICmp"
  21.    PATH$=FILE$
  22.    
  23. End If 
  24.  
  25. Do 
  26.    
  27.    GAD= Extension_24_0024 : CD= Extension_24_0042 : C$= Extension_24_0050 
  28.    
  29.    If GAD=-1
  30.        Extension_24_0120 : Track Stop : Amos To Front : End 
  31.       
  32.    Else If GAD=0
  33.       REQ["Select source program"]
  34.       If Param=True : SOURCE$=FILE$ : Extension_24_008E 1,2,0,Varptr(FILE$) : End If 
  35.       
  36.    Else If GAD=1
  37.       Repeat 
  38.          A=1 : REQ["Select destination program"]
  39.          If Param=True : A= Extension_24_0140("GUI Compiler Shell Request","File already exist! Overwrite?","OK|Cancel") : End If 
  40.       Until A><0
  41.       DEST$=FILE$ : Extension_24_008E 1,3,0,Varptr(FILE$)
  42.       
  43.    Else If GAD=2
  44.       If Exist(C$)
  45.          SOURCE$=C$
  46.       Else 
  47.           Extension_24_008E 1,2,0,Varptr(SOURCE$)
  48.       End If 
  49.       
  50.    Else If GAD=3
  51.       DEST$=C$
  52.       If Exist(DEST$)
  53.          A= Extension_24_0140("GUI Compiler Shell Request","File already exist! Overwrite?","OK|Cancel")
  54.          If A=0 : DEST$="" : End If 
  55.       End If 
  56.        Extension_24_008E 1,3,0,Varptr(DEST$)
  57.       
  58.    Else If GAD=4
  59.       C0MPILE
  60.       
  61.    Else If GAD=5
  62.    If CD=0 : JUMP$=" NOLONG" Else JUMP$=" LONG" : End If 
  63.       
  64.    Else If GAD=6
  65.    If CD=0 : LIB$=" INCLIB" Else LIB$=" NOLIB" : End If 
  66.       
  67.    Else If GAD=7
  68.        Extension_24_0322 1
  69.       
  70.    Else If GAD=8
  71.       A= Extension_24_0140("About",M$,"OK")
  72.       
  73.    Else If GAD=9
  74.    If CD : Track Play 7 Else Track Stop : End If 
  75.       
  76.    Else If GAD=-6
  77.        Extension_24_0334 1
  78.       
  79.    End If 
  80.    
  81. Loop 
  82.  
  83. Procedure REQ[F$]
  84.    
  85.    F$= Extension_24_0152(F$,"","") : FILE$=""
  86.    
  87.    If F$><"" Then FILE$=F$
  88.    
  89. End Proc[Exist(FILE$)]
  90. Procedure C0MPILE
  91.    
  92.    V$=Chr$(34) : COM$=" FROM "+V$+SOURCE$+V$+" TO "+V$+DEST$+V$+DEF$+JUMP$+LIB$
  93.    Timer=0 : _EXEC[PATH$+COM$] : T=Timer : Trap Open In 1,DEST$
  94.    
  95.    If Errtrap
  96.       A= Extension_24_0140(TITLE$,"Compilation Error!","Ooopss!")
  97.    Else 
  98.       M=T/3000 : S=(T/50)-(M*60) : TIME$=Str$(M)+":"+Str$(S) : TIME$=TIME$-" "
  99.       A= Extension_24_0140(TITLE$,"Time used "+TIME$+" secs","OK") : Close 
  100.    End If 
  101.    
  102.    Dreg(1)=HAND : A=Doscall(-36) : Dreg(1)=HAND2 : A=Doscall(-36)
  103.    
  104. End Proc
  105. Procedure _EXEC[C$]
  106.    
  107.    RAW$="RAW:28/69/584/128/GUI Compiler Output"+Chr$(0) : Dreg(1)=Varptr(RAW$) : Dreg(2)=1004
  108.    HAND=Doscall(-30)
  109.    
  110.    NIL$="NIL:"+Chr$(0) : Dreg(1)=Varptr(NIL$) : Dreg(2)=1004
  111.    HAND2=Doscall(-30)
  112.    
  113.    If HAND
  114.       C$=C$+Chr$(0) : Dreg(1)=Varptr(C$) : Dreg(2)=HAND2 : Dreg(3)=HAND
  115.       F=Doscall(-222)
  116.    End If 
  117.    
  118. End Proc
  119.  
  120. ABOUT:
  121. Data "AMOSPro Gui Compiler Shell V1.1"
  122. Data "      ï¿½1996 Dairymen Soft"
  123. Data "  Written by: Pietro Ghizzoni"
  124. Data "  E-Mail: ghizzo@galactica.it"
  125.  
  126. ' Amos Professional Team production